In recent years, there is a trend toward writing and managing information about a configuration of an information system in a form of a structured document. In particular, it is a widespread practice to describe information about components of an information system such as a virtual server or a network in Extensible Markup Language (XML) or JavaScript® Object Notation (JSON), and to manage the information as configuration definition files for the information system. A purpose of such management is to deploy the virtual server onto a cloud infrastructure.
Since these configuration definition files are structured documents, the configuration definition files have advantages in terms of handling structured documents in general, for example, ease of partial extraction/copying/reuse. Accordingly, a complicated information system that meets individual requirements can be easily constructed by combining system designs (design patterns) that are broken down into patterns, relatively.
However, in just structuring, when changes in some categories cause changes to other categories, all of the changes need to be checked and appropriate changing work (determination of parameters) needs to be manually performed. The changing work needs to be carefully performed by an operator who completely knows dependence among components of the system. Further, when a system in which a plurality of components having multiple setting categories have dependence is targeted, the changing work may be very burdensome. Moreover, when a size of a system is greater than a certain size or when the changes need to be repeated by a plurality of times, an amount of the changing work becomes huge and the work itself becomes difficult to perform. The changing work therefore becomes a factor that hinders reuse of existing configuration definitions by combining such definitions.
An issue is how consistency among set values after system changes can be maintained without being affected by the number of changes and a scale of the changes, in order to reduce the work. To solve the issue, a method for defining dependence among the setting categories (parameters) and specifics thereof, and recalculating the parameters as required is needed.
PTL 1 discloses a method for defining dependence among the setting categories. Specifically, PTL 1 discloses a technique of automatically changing dependent categories in a particular changed pattern and presenting points to be changed after definition information concerning software development is changed, by assigning dependence among parameters in the definition information to the parameters as a rule.
As a representation that defines specifics of dependence, a reference representation that uses a reference model is widely used in a common programming language and spreadsheet software as well as in PTL 1. For example, when dependence is that a parameter A has the same value as a parameter B, an abstract representation, “, B”, which means “is equal to a set value of the parameter B”, is used as a set value of the parameter A, instead of describing the current same set value as the parameter B. This automates re-setting of the parameter A when the parameter B is changed.